/**
 * 
 */
package co.com.siti.sie.vo;

import java.io.Serializable;
import java.util.List;

/**
 * @author David.Cadena
 *
 */
public class AsignaturaVO implements Serializable, Comparable<AsignaturaVO> {

	/**
   * 
   */
	private static final long serialVersionUID = 3544763455150429403L;
	private Integer codigo;
	private String nombre;
	private List<AlumnoVO> alumnos;
	private Integer cicloGradoAsignatura;

	public AsignaturaVO(Integer codigo, String nombre) {
		this.codigo = codigo;
		this.nombre = nombre;
	}

	/**
	 * @return the codigo
	 */
	public Integer getCodigo() {
		return codigo;
	}

	/**
	 * @param codigo
	 *            the codigo to set
	 */
	public void setCodigo(Integer codigo) {
		this.codigo = codigo;
	}

	/**
	 * @return the nombre
	 */
	public String getNombre() {
		return nombre;
	}

	/**
	 * @param nombre
	 *            the nombre to set
	 */
	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	/**
	 * @return the alumnos
	 */
	public List<AlumnoVO> getAlumnos() {
		return alumnos;
	}

	/**
	 * @param alumnos
	 *            the alumnos to set
	 */
	public void setAlumnos(List<AlumnoVO> alumnos) {
		this.alumnos = alumnos;
	}

	/**
	 * @return the cicloGradoAsignatura
	 */
	public Integer getCicloGradoAsignatura() {
		return cicloGradoAsignatura;
	}

	/**
	 * @param cicloGradoAsignatura
	 *            the cicloGradoAsignatura to set
	 */
	public void setCicloGradoAsignatura(Integer cicloGradoAsignatura) {
		this.cicloGradoAsignatura = cicloGradoAsignatura;
	}

	@Override
	public int compareTo(AsignaturaVO o) {
		int lastCmp = nombre.compareTo(o.nombre);
		return (lastCmp != 0 ? lastCmp : nombre.compareTo(o.nombre));
	}
}
